Describe and Inspect

describe object[Function]

Prints the information about object to the stream that is the value of *standard-output*. The description of an object consists of several fields, each of which is described in a recursive manner. For example, a symbol may have fields such as home package, variable documentation, value, function documentation, function binding, type documentation, deftype definition, properties.

inspect object[Function]

Prints the information about object in an interactive manner. The output of inspect is similar to that of describe, but after printing the label and the value of a field (the value itself is not describe 'd), it prompts the user to input a one-character command. The input to inspect is taken from the stream that is the value of *query-io* . Normally, the inspection of object terminates after all of its fields have been inspected. The following commands are supported:

n
Next. Goes to the next level; the field is inspected recursively.

s
Skip. Skips the inspection of the field. inspect proceeds to the next field.

p
Print. Pretty-prints the field and prompts again.

u form
Update. The form is evaluated and the field is replaced by the resulting value. If the field cannot be updated, the message Not updated. will be printed.

a
Abort. Aborts the inspection of the current object. The field and the rest of the fields are not inspected.

e form
Eval. Evaluates the specified form in the null environment and prints the resulting values. Then prompts again with the same field.

q
Quit. Aborts the entire inspection.

?
Help. Lists the inspect commands.